Type-Safe Update Programming

نویسندگان

  • Martin Erwig
  • Deling Ren
چکیده

Many software maintenance problems are caused by using text editors to change programs. A more systematic and reliable way of performing program updates is to express changes with an update language. In particular, updates should preserve the syntaxand typecorrectness of the transformed object programs. We describe an update calculus that can be used to update lambdacalculus programs. We develop a type system for the update language that infers the possible type changes that can be caused by an update program. We demonstrate that type-safe update programs that fulfill certain structural constraints preserve the type-correctness of lambda terms.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

An update calculus for expressing type-safe program updates

The dominant share of software development costs is spent on software maintenance, particularly the process of updating programs in response to changing requirements. Currently, such program changes tend to be performed using text editors, an unreliable method that often causes many errors. In addition to syntax and type errors, logical errors can be easily introduced since text editors cannot ...

متن کامل

High-Level Database Programming in Curry

This paper presents an environment to support high-level database programming in the multi-paradigm declarative programming language Curry. We define an application programming interface (API) that abstracts from the concrete database access methods. The API supports transactions and exploits Curry’s type system to ensure a strict separation between queries and updates. In order to ensure datab...

متن کامل

Mosaic: A Non-Intrusive Complete Garbage Collector for DSM System

Little work has been done in garbage collection algorithms for distributed shared memory systems. Mosaic is a safe and complete garbage collection system that collects garbage in object systems that are implemented above page-based distributed shared memory systems. It is non-intrusive in its impact on application performance. Mosaic partitions the virtual address space into separately managed ...

متن کامل

Compiling ER Specifications into Declarative Programs

This paper proposes an environment to support high-level database programming in a declarative programming language. In order to ensure safe database updates, all access and update operations related to the database are generated from high-level descriptions in the entityrelationship (ER) model. We propose a representation of ER diagrams in the declarative language Curry so that they can be con...

متن کامل

Safe Dynamic Software Updates in Multi-Threaded Systems with ActiveContext

Applications need to be updated. The traditional approach to stop and consequently restart an application for an update is not a valid scenario in the case of high availability environments—they need to be updated at runtime. The reflective capabilities of dynamic languages offer a convenient way to install updates at runtime, but do not provide adequate mechanisms to ensure safety. They suffer...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2003